package com.aizuda.boot.modules.business.permission.domain.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.util.Date;

/**
 * @author duanyao
 * @date 2024/03/21
 * @description: 部门与员工关系表
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@TableName("auth_department_employee_rel")
@Schema(description = "部门员工关系")
public class DepartmentEmployeeRelEntity extends BaseEntity implements Serializable {

    @TableId(value = "id", type = IdType.AUTO)
    @Schema(description = "主键ID")
    private Long id;

    @Schema(description = "部门id")
    private Long departmentId;

    @Schema(description = "员工id")
    @TableField("employee_id")
    private Long employeeId;

    @Schema(description = "1：领导 0：不是领导")
    private Boolean leader;

    @Schema(description = "部门分类，1：所属（主），2：所在")
    private Integer departmentBelong;

    @Schema(description = "是否可用，0：否，1：是")
    private Boolean enable;

    @Schema(description = "员工部门排序")
    private Long employeeDepartmentOrder;

    @Schema(description = "创建人")
    private Long createUser;

    @Schema(description = "创建日期")
    private Date gmtCreate;

    @Schema(description = "修改人")
    private Long modifiedUser;

    @Schema(description = "修改日期")
    private Date gmtModified;

    @Schema(description = "创建人名称")
    private String createUserName;

    @Schema(description = "修改人名称")
    private String modifiedUserName;

    @Schema(description = "删除标识（0：否[默认]，1：是）")
    private Boolean isDeleted;

    @Schema(description = "组织ID")
    @TableField("orgID")
    private String orgID;

    @Schema(description = "指纹")
    private String fingerPrint;

    @Schema(description = "员工编号")
    @TableField("employee_code")
    private String employeeCode;
} 